

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 7.00.0500 */
/* at Tue Jun 23 09:28:05 2009
 */
/* Compiler settings for .\QSAPIWebMenu20.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __QSAPIWebMenu20_h__
#define __QSAPIWebMenu20_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IMenuItem_FWD_DEFINED__
#define __IMenuItem_FWD_DEFINED__
typedef interface IMenuItem IMenuItem;
#endif 	/* __IMenuItem_FWD_DEFINED__ */


#ifndef __ISubMenu_FWD_DEFINED__
#define __ISubMenu_FWD_DEFINED__
typedef interface ISubMenu ISubMenu;
#endif 	/* __ISubMenu_FWD_DEFINED__ */


#ifndef __IMenu_FWD_DEFINED__
#define __IMenu_FWD_DEFINED__
typedef interface IMenu IMenu;
#endif 	/* __IMenu_FWD_DEFINED__ */


#ifndef __IButton_FWD_DEFINED__
#define __IButton_FWD_DEFINED__
typedef interface IButton IButton;
#endif 	/* __IButton_FWD_DEFINED__ */


#ifndef __IToolBar_FWD_DEFINED__
#define __IToolBar_FWD_DEFINED__
typedef interface IToolBar IToolBar;
#endif 	/* __IToolBar_FWD_DEFINED__ */


#ifndef __IMenuBar_FWD_DEFINED__
#define __IMenuBar_FWD_DEFINED__
typedef interface IMenuBar IMenuBar;
#endif 	/* __IMenuBar_FWD_DEFINED__ */


#ifndef __MenuBar_FWD_DEFINED__
#define __MenuBar_FWD_DEFINED__

#ifdef __cplusplus
typedef class MenuBar MenuBar;
#else
typedef struct MenuBar MenuBar;
#endif /* __cplusplus */

#endif 	/* __MenuBar_FWD_DEFINED__ */


#ifndef __Menu_FWD_DEFINED__
#define __Menu_FWD_DEFINED__

#ifdef __cplusplus
typedef class Menu Menu;
#else
typedef struct Menu Menu;
#endif /* __cplusplus */

#endif 	/* __Menu_FWD_DEFINED__ */


#ifndef __MenuItem_FWD_DEFINED__
#define __MenuItem_FWD_DEFINED__

#ifdef __cplusplus
typedef class MenuItem MenuItem;
#else
typedef struct MenuItem MenuItem;
#endif /* __cplusplus */

#endif 	/* __MenuItem_FWD_DEFINED__ */


#ifndef __SubMenu_FWD_DEFINED__
#define __SubMenu_FWD_DEFINED__

#ifdef __cplusplus
typedef class SubMenu SubMenu;
#else
typedef struct SubMenu SubMenu;
#endif /* __cplusplus */

#endif 	/* __SubMenu_FWD_DEFINED__ */


#ifndef __ToolBar_FWD_DEFINED__
#define __ToolBar_FWD_DEFINED__

#ifdef __cplusplus
typedef class ToolBar ToolBar;
#else
typedef struct ToolBar ToolBar;
#endif /* __cplusplus */

#endif 	/* __ToolBar_FWD_DEFINED__ */


#ifndef __Button_FWD_DEFINED__
#define __Button_FWD_DEFINED__

#ifdef __cplusplus
typedef class Button Button;
#else
typedef struct Button Button;
#endif /* __cplusplus */

#endif 	/* __Button_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

#ifdef __cplusplus
extern "C"{
#endif 


#ifndef __IMenuItem_INTERFACE_DEFINED__
#define __IMenuItem_INTERFACE_DEFINED__

/* interface IMenuItem */
/* [nonextensible][unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IMenuItem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("994236C0-C806-40C9-B39F-FEE014C8D503")
    IMenuItem : public IDispatch
    {
    public:
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_caption( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_caption( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_enabled( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_enabled( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_checked( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_checked( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_imageID( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_imageID( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_onClick( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_onClick( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_visible( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_visible( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_clickParam( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_clickParam( 
            /* [in] */ BSTR newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMenuItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMenuItem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMenuItem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMenuItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMenuItem * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMenuItem * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMenuItem * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMenuItem * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_caption )( 
            IMenuItem * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_caption )( 
            IMenuItem * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_enabled )( 
            IMenuItem * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_enabled )( 
            IMenuItem * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_checked )( 
            IMenuItem * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_checked )( 
            IMenuItem * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_imageID )( 
            IMenuItem * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_imageID )( 
            IMenuItem * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onClick )( 
            IMenuItem * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onClick )( 
            IMenuItem * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_visible )( 
            IMenuItem * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_visible )( 
            IMenuItem * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_clickParam )( 
            IMenuItem * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_clickParam )( 
            IMenuItem * This,
            /* [in] */ BSTR newVal);
        
        END_INTERFACE
    } IMenuItemVtbl;

    interface IMenuItem
    {
        CONST_VTBL struct IMenuItemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMenuItem_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IMenuItem_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IMenuItem_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IMenuItem_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IMenuItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IMenuItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IMenuItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IMenuItem_get_caption(This,pVal)	\
    ( (This)->lpVtbl -> get_caption(This,pVal) ) 

#define IMenuItem_put_caption(This,newVal)	\
    ( (This)->lpVtbl -> put_caption(This,newVal) ) 

#define IMenuItem_get_enabled(This,pVal)	\
    ( (This)->lpVtbl -> get_enabled(This,pVal) ) 

#define IMenuItem_put_enabled(This,newVal)	\
    ( (This)->lpVtbl -> put_enabled(This,newVal) ) 

#define IMenuItem_get_checked(This,pVal)	\
    ( (This)->lpVtbl -> get_checked(This,pVal) ) 

#define IMenuItem_put_checked(This,newVal)	\
    ( (This)->lpVtbl -> put_checked(This,newVal) ) 

#define IMenuItem_get_imageID(This,pVal)	\
    ( (This)->lpVtbl -> get_imageID(This,pVal) ) 

#define IMenuItem_put_imageID(This,newVal)	\
    ( (This)->lpVtbl -> put_imageID(This,newVal) ) 

#define IMenuItem_get_onClick(This,pVal)	\
    ( (This)->lpVtbl -> get_onClick(This,pVal) ) 

#define IMenuItem_put_onClick(This,newVal)	\
    ( (This)->lpVtbl -> put_onClick(This,newVal) ) 

#define IMenuItem_get_visible(This,pVal)	\
    ( (This)->lpVtbl -> get_visible(This,pVal) ) 

#define IMenuItem_put_visible(This,newVal)	\
    ( (This)->lpVtbl -> put_visible(This,newVal) ) 

#define IMenuItem_get_clickParam(This,pVal)	\
    ( (This)->lpVtbl -> get_clickParam(This,pVal) ) 

#define IMenuItem_put_clickParam(This,newVal)	\
    ( (This)->lpVtbl -> put_clickParam(This,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IMenuItem_INTERFACE_DEFINED__ */


#ifndef __ISubMenu_INTERFACE_DEFINED__
#define __ISubMenu_INTERFACE_DEFINED__

/* interface ISubMenu */
/* [nonextensible][unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_ISubMenu;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("620F7E89-ECB0-4EE7-8224-ADFD15F90AE8")
    ISubMenu : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddItem( 
            /* [in] */ BSTR ItemIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number,
            /* [in] */ BSTR OnClick_FuncString,
            /* [defaultvalue][in] */ BSTR OnClick_ParamString = L"") = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSubMenu( 
            /* [in] */ BSTR SubMenuIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSeparator( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnableItems( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableItems( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ BSTR ItemIDString,
            /* [retval][out] */ IMenuItem **pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubMenu( 
            /* [in] */ BSTR SubMenuIDString,
            /* [retval][out] */ ISubMenu **pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_enabled( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_enabled( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_imageID( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_imageID( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_caption( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_caption( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_visible( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_visible( 
            /* [in] */ BOOL newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISubMenuVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISubMenu * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISubMenu * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISubMenu * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISubMenu * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISubMenu * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISubMenu * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISubMenu * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddItem )( 
            ISubMenu * This,
            /* [in] */ BSTR ItemIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number,
            /* [in] */ BSTR OnClick_FuncString,
            /* [defaultvalue][in] */ BSTR OnClick_ParamString);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSubMenu )( 
            ISubMenu * This,
            /* [in] */ BSTR SubMenuIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSeparator )( 
            ISubMenu * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnableItems )( 
            ISubMenu * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableItems )( 
            ISubMenu * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
            ISubMenu * This,
            /* [in] */ BSTR ItemIDString,
            /* [retval][out] */ IMenuItem **pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubMenu )( 
            ISubMenu * This,
            /* [in] */ BSTR SubMenuIDString,
            /* [retval][out] */ ISubMenu **pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_enabled )( 
            ISubMenu * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_enabled )( 
            ISubMenu * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_imageID )( 
            ISubMenu * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_imageID )( 
            ISubMenu * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_caption )( 
            ISubMenu * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_caption )( 
            ISubMenu * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_count )( 
            ISubMenu * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_visible )( 
            ISubMenu * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_visible )( 
            ISubMenu * This,
            /* [in] */ BOOL newVal);
        
        END_INTERFACE
    } ISubMenuVtbl;

    interface ISubMenu
    {
        CONST_VTBL struct ISubMenuVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISubMenu_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define ISubMenu_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define ISubMenu_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define ISubMenu_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define ISubMenu_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define ISubMenu_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define ISubMenu_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define ISubMenu_AddItem(This,ItemIDString,Caption,ImageID_Number,OnClick_FuncString,OnClick_ParamString)	\
    ( (This)->lpVtbl -> AddItem(This,ItemIDString,Caption,ImageID_Number,OnClick_FuncString,OnClick_ParamString) ) 

#define ISubMenu_AddSubMenu(This,SubMenuIDString,Caption,ImageID_Number)	\
    ( (This)->lpVtbl -> AddSubMenu(This,SubMenuIDString,Caption,ImageID_Number) ) 

#define ISubMenu_AddSeparator(This)	\
    ( (This)->lpVtbl -> AddSeparator(This) ) 

#define ISubMenu_EnableItems(This)	\
    ( (This)->lpVtbl -> EnableItems(This) ) 

#define ISubMenu_DisableItems(This)	\
    ( (This)->lpVtbl -> DisableItems(This) ) 

#define ISubMenu_get_Item(This,ItemIDString,pVal)	\
    ( (This)->lpVtbl -> get_Item(This,ItemIDString,pVal) ) 

#define ISubMenu_get_SubMenu(This,SubMenuIDString,pVal)	\
    ( (This)->lpVtbl -> get_SubMenu(This,SubMenuIDString,pVal) ) 

#define ISubMenu_get_enabled(This,pVal)	\
    ( (This)->lpVtbl -> get_enabled(This,pVal) ) 

#define ISubMenu_put_enabled(This,newVal)	\
    ( (This)->lpVtbl -> put_enabled(This,newVal) ) 

#define ISubMenu_get_imageID(This,pVal)	\
    ( (This)->lpVtbl -> get_imageID(This,pVal) ) 

#define ISubMenu_put_imageID(This,newVal)	\
    ( (This)->lpVtbl -> put_imageID(This,newVal) ) 

#define ISubMenu_get_caption(This,pVal)	\
    ( (This)->lpVtbl -> get_caption(This,pVal) ) 

#define ISubMenu_put_caption(This,newVal)	\
    ( (This)->lpVtbl -> put_caption(This,newVal) ) 

#define ISubMenu_get_count(This,pVal)	\
    ( (This)->lpVtbl -> get_count(This,pVal) ) 

#define ISubMenu_get_visible(This,pVal)	\
    ( (This)->lpVtbl -> get_visible(This,pVal) ) 

#define ISubMenu_put_visible(This,newVal)	\
    ( (This)->lpVtbl -> put_visible(This,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ISubMenu_INTERFACE_DEFINED__ */


#ifndef __IMenu_INTERFACE_DEFINED__
#define __IMenu_INTERFACE_DEFINED__

/* interface IMenu */
/* [nonextensible][unique][helpstring][dual][uuid][local][object] */ 


EXTERN_C const IID IID_IMenu;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EB303533-EE7F-45A5-B92D-C45E441480B8")
    IMenu : public IDispatch
    {
    public:
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ BSTR ItemIDString,
            /* [retval][out] */ IMenuItem **pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_caption( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_caption( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddItem( 
            /* [in] */ BSTR ItemIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number,
            /* [in] */ BSTR OnClick_FuncString,
            /* [defaultvalue][in] */ BSTR OnClick_ParamString = L"") = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSeparator( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSubMenu( 
            /* [in] */ BSTR SubMenuIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubMenu( 
            /* [in] */ BSTR SubMenuIDString,
            /* [retval][out] */ ISubMenu **pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnableItems( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableItems( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_visible( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_visible( 
            /* [in] */ BOOL newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMenuVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMenu * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMenu * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMenu * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMenu * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMenu * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMenu * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMenu * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
            IMenu * This,
            /* [in] */ BSTR ItemIDString,
            /* [retval][out] */ IMenuItem **pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_caption )( 
            IMenu * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_caption )( 
            IMenu * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_count )( 
            IMenu * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddItem )( 
            IMenu * This,
            /* [in] */ BSTR ItemIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number,
            /* [in] */ BSTR OnClick_FuncString,
            /* [defaultvalue][in] */ BSTR OnClick_ParamString);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSeparator )( 
            IMenu * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSubMenu )( 
            IMenu * This,
            /* [in] */ BSTR SubMenuIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SubMenu )( 
            IMenu * This,
            /* [in] */ BSTR SubMenuIDString,
            /* [retval][out] */ ISubMenu **pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnableItems )( 
            IMenu * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableItems )( 
            IMenu * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_visible )( 
            IMenu * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_visible )( 
            IMenu * This,
            /* [in] */ BOOL newVal);
        
        END_INTERFACE
    } IMenuVtbl;

    interface IMenu
    {
        CONST_VTBL struct IMenuVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMenu_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IMenu_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IMenu_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IMenu_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IMenu_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IMenu_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IMenu_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IMenu_get_Item(This,ItemIDString,pVal)	\
    ( (This)->lpVtbl -> get_Item(This,ItemIDString,pVal) ) 

#define IMenu_get_caption(This,pVal)	\
    ( (This)->lpVtbl -> get_caption(This,pVal) ) 

#define IMenu_put_caption(This,newVal)	\
    ( (This)->lpVtbl -> put_caption(This,newVal) ) 

#define IMenu_get_count(This,pVal)	\
    ( (This)->lpVtbl -> get_count(This,pVal) ) 

#define IMenu_AddItem(This,ItemIDString,Caption,ImageID_Number,OnClick_FuncString,OnClick_ParamString)	\
    ( (This)->lpVtbl -> AddItem(This,ItemIDString,Caption,ImageID_Number,OnClick_FuncString,OnClick_ParamString) ) 

#define IMenu_AddSeparator(This)	\
    ( (This)->lpVtbl -> AddSeparator(This) ) 

#define IMenu_AddSubMenu(This,SubMenuIDString,Caption,ImageID_Number)	\
    ( (This)->lpVtbl -> AddSubMenu(This,SubMenuIDString,Caption,ImageID_Number) ) 

#define IMenu_get_SubMenu(This,SubMenuIDString,pVal)	\
    ( (This)->lpVtbl -> get_SubMenu(This,SubMenuIDString,pVal) ) 

#define IMenu_EnableItems(This)	\
    ( (This)->lpVtbl -> EnableItems(This) ) 

#define IMenu_DisableItems(This)	\
    ( (This)->lpVtbl -> DisableItems(This) ) 

#define IMenu_get_visible(This,pVal)	\
    ( (This)->lpVtbl -> get_visible(This,pVal) ) 

#define IMenu_put_visible(This,newVal)	\
    ( (This)->lpVtbl -> put_visible(This,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IMenu_INTERFACE_DEFINED__ */


#ifndef __IButton_INTERFACE_DEFINED__
#define __IButton_INTERFACE_DEFINED__

/* interface IButton */
/* [nonextensible][unique][helpstring][dual][uuid][local][object] */ 


EXTERN_C const IID IID_IButton;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A2695AD2-1597-480C-844A-8E10E6EEBD14")
    IButton : public IDispatch
    {
    public:
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_caption( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_caption( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_imageID( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_imageID( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_visible( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_visible( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_enabled( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_enabled( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_tooltip( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_tooltip( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_onClick( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_onClick( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_checked( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_checked( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_clickParam( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_clickParam( 
            /* [in] */ BSTR newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IButtonVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IButton * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IButton * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IButton * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IButton * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IButton * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IButton * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IButton * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_caption )( 
            IButton * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_caption )( 
            IButton * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_imageID )( 
            IButton * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_imageID )( 
            IButton * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_visible )( 
            IButton * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_visible )( 
            IButton * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_enabled )( 
            IButton * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_enabled )( 
            IButton * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_tooltip )( 
            IButton * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tooltip )( 
            IButton * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onClick )( 
            IButton * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onClick )( 
            IButton * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_checked )( 
            IButton * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_checked )( 
            IButton * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_clickParam )( 
            IButton * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_clickParam )( 
            IButton * This,
            /* [in] */ BSTR newVal);
        
        END_INTERFACE
    } IButtonVtbl;

    interface IButton
    {
        CONST_VTBL struct IButtonVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IButton_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IButton_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IButton_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IButton_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IButton_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IButton_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IButton_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IButton_get_caption(This,pVal)	\
    ( (This)->lpVtbl -> get_caption(This,pVal) ) 

#define IButton_put_caption(This,newVal)	\
    ( (This)->lpVtbl -> put_caption(This,newVal) ) 

#define IButton_get_imageID(This,pVal)	\
    ( (This)->lpVtbl -> get_imageID(This,pVal) ) 

#define IButton_put_imageID(This,newVal)	\
    ( (This)->lpVtbl -> put_imageID(This,newVal) ) 

#define IButton_get_visible(This,pVal)	\
    ( (This)->lpVtbl -> get_visible(This,pVal) ) 

#define IButton_put_visible(This,newVal)	\
    ( (This)->lpVtbl -> put_visible(This,newVal) ) 

#define IButton_get_enabled(This,pVal)	\
    ( (This)->lpVtbl -> get_enabled(This,pVal) ) 

#define IButton_put_enabled(This,newVal)	\
    ( (This)->lpVtbl -> put_enabled(This,newVal) ) 

#define IButton_get_tooltip(This,pVal)	\
    ( (This)->lpVtbl -> get_tooltip(This,pVal) ) 

#define IButton_put_tooltip(This,newVal)	\
    ( (This)->lpVtbl -> put_tooltip(This,newVal) ) 

#define IButton_get_onClick(This,pVal)	\
    ( (This)->lpVtbl -> get_onClick(This,pVal) ) 

#define IButton_put_onClick(This,newVal)	\
    ( (This)->lpVtbl -> put_onClick(This,newVal) ) 

#define IButton_get_checked(This,pVal)	\
    ( (This)->lpVtbl -> get_checked(This,pVal) ) 

#define IButton_put_checked(This,newVal)	\
    ( (This)->lpVtbl -> put_checked(This,newVal) ) 

#define IButton_get_clickParam(This,pVal)	\
    ( (This)->lpVtbl -> get_clickParam(This,pVal) ) 

#define IButton_put_clickParam(This,newVal)	\
    ( (This)->lpVtbl -> put_clickParam(This,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IButton_INTERFACE_DEFINED__ */


#ifndef __IToolBar_INTERFACE_DEFINED__
#define __IToolBar_INTERFACE_DEFINED__

/* interface IToolBar */
/* [nonextensible][unique][helpstring][dual][uuid][local][object] */ 


EXTERN_C const IID IID_IToolBar;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("89D863A7-7F9E-423B-914B-F75563B97C00")
    IToolBar : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddButton( 
            /* [in] */ BSTR ButtonIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number,
            /* [in] */ BSTR OnClick_FuncString,
            /* [defaultvalue][in] */ BSTR OnClick_ParamString = L"") = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSeparator( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_visible( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_visible( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Button( 
            /* [in] */ BSTR ButtonIDString,
            /* [retval][out] */ IButton **pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_forceBreak( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_forceBreak( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_textRight( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_textRight( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_textBelow( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_textBelow( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_noText( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_noText( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_index( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_index( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_offsetLeft( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_offsetLeft( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_largeIcons( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_largeIcons( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableButtons( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnableButtons( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_caption( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_caption( 
            /* [in] */ BSTR newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IToolBarVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IToolBar * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IToolBar * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IToolBar * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IToolBar * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IToolBar * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IToolBar * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IToolBar * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddButton )( 
            IToolBar * This,
            /* [in] */ BSTR ButtonIDString,
            /* [in] */ BSTR Caption,
            /* [in] */ long ImageID_Number,
            /* [in] */ BSTR OnClick_FuncString,
            /* [defaultvalue][in] */ BSTR OnClick_ParamString);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSeparator )( 
            IToolBar * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_count )( 
            IToolBar * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_visible )( 
            IToolBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_visible )( 
            IToolBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Button )( 
            IToolBar * This,
            /* [in] */ BSTR ButtonIDString,
            /* [retval][out] */ IButton **pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_forceBreak )( 
            IToolBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_forceBreak )( 
            IToolBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_textRight )( 
            IToolBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_textRight )( 
            IToolBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_textBelow )( 
            IToolBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_textBelow )( 
            IToolBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_noText )( 
            IToolBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_noText )( 
            IToolBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_index )( 
            IToolBar * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_index )( 
            IToolBar * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_offsetLeft )( 
            IToolBar * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_offsetLeft )( 
            IToolBar * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_largeIcons )( 
            IToolBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_largeIcons )( 
            IToolBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableButtons )( 
            IToolBar * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnableButtons )( 
            IToolBar * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_caption )( 
            IToolBar * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_caption )( 
            IToolBar * This,
            /* [in] */ BSTR newVal);
        
        END_INTERFACE
    } IToolBarVtbl;

    interface IToolBar
    {
        CONST_VTBL struct IToolBarVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IToolBar_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IToolBar_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IToolBar_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IToolBar_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IToolBar_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IToolBar_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IToolBar_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IToolBar_AddButton(This,ButtonIDString,Caption,ImageID_Number,OnClick_FuncString,OnClick_ParamString)	\
    ( (This)->lpVtbl -> AddButton(This,ButtonIDString,Caption,ImageID_Number,OnClick_FuncString,OnClick_ParamString) ) 

#define IToolBar_AddSeparator(This)	\
    ( (This)->lpVtbl -> AddSeparator(This) ) 

#define IToolBar_get_count(This,pVal)	\
    ( (This)->lpVtbl -> get_count(This,pVal) ) 

#define IToolBar_get_visible(This,pVal)	\
    ( (This)->lpVtbl -> get_visible(This,pVal) ) 

#define IToolBar_put_visible(This,newVal)	\
    ( (This)->lpVtbl -> put_visible(This,newVal) ) 

#define IToolBar_get_Button(This,ButtonIDString,pVal)	\
    ( (This)->lpVtbl -> get_Button(This,ButtonIDString,pVal) ) 

#define IToolBar_get_forceBreak(This,pVal)	\
    ( (This)->lpVtbl -> get_forceBreak(This,pVal) ) 

#define IToolBar_put_forceBreak(This,newVal)	\
    ( (This)->lpVtbl -> put_forceBreak(This,newVal) ) 

#define IToolBar_get_textRight(This,pVal)	\
    ( (This)->lpVtbl -> get_textRight(This,pVal) ) 

#define IToolBar_put_textRight(This,newVal)	\
    ( (This)->lpVtbl -> put_textRight(This,newVal) ) 

#define IToolBar_get_textBelow(This,pVal)	\
    ( (This)->lpVtbl -> get_textBelow(This,pVal) ) 

#define IToolBar_put_textBelow(This,newVal)	\
    ( (This)->lpVtbl -> put_textBelow(This,newVal) ) 

#define IToolBar_get_noText(This,pVal)	\
    ( (This)->lpVtbl -> get_noText(This,pVal) ) 

#define IToolBar_put_noText(This,newVal)	\
    ( (This)->lpVtbl -> put_noText(This,newVal) ) 

#define IToolBar_get_index(This,pVal)	\
    ( (This)->lpVtbl -> get_index(This,pVal) ) 

#define IToolBar_put_index(This,newVal)	\
    ( (This)->lpVtbl -> put_index(This,newVal) ) 

#define IToolBar_get_offsetLeft(This,pVal)	\
    ( (This)->lpVtbl -> get_offsetLeft(This,pVal) ) 

#define IToolBar_put_offsetLeft(This,newVal)	\
    ( (This)->lpVtbl -> put_offsetLeft(This,newVal) ) 

#define IToolBar_get_largeIcons(This,pVal)	\
    ( (This)->lpVtbl -> get_largeIcons(This,pVal) ) 

#define IToolBar_put_largeIcons(This,newVal)	\
    ( (This)->lpVtbl -> put_largeIcons(This,newVal) ) 

#define IToolBar_DisableButtons(This)	\
    ( (This)->lpVtbl -> DisableButtons(This) ) 

#define IToolBar_EnableButtons(This)	\
    ( (This)->lpVtbl -> EnableButtons(This) ) 

#define IToolBar_get_caption(This,pVal)	\
    ( (This)->lpVtbl -> get_caption(This,pVal) ) 

#define IToolBar_put_caption(This,newVal)	\
    ( (This)->lpVtbl -> put_caption(This,newVal) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IToolBar_INTERFACE_DEFINED__ */


#ifndef __IMenuBar_INTERFACE_DEFINED__
#define __IMenuBar_INTERFACE_DEFINED__

/* interface IMenuBar */
/* [nonextensible][unique][helpstring][hidden][dual][uuid][object] */ 


EXTERN_C const IID IID_IMenuBar;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("40E76745-6D5B-4A37-953B-00C81B5FF664")
    IMenuBar : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddMenu( 
            /* [in] */ BSTR MenuIDString,
            /* [in] */ BSTR MenuCaptionString) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Menu( 
            /* [in] */ BSTR MenuIDString,
            /* [retval][out] */ IMenu **pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_count( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Toolbar( 
            /* [in] */ BSTR ToolbarIDString,
            /* [retval][out] */ IToolBar **pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_deploymentKey( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_deploymentKey( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddToolbar( 
            /* [in] */ BSTR ToolbarIDString,
            /* [in] */ BSTR ToolbarCaptionString) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockUI( 
            /* [defaultvalue][in] */ ULONG TimeOutMilliSeconds,
            /* [defaultvalue][in] */ BSTR LockNotifyFuncString,
            /* [defaultvalue][in] */ BSTR LockTimeOutFuncString,
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockUI( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_lockedUI( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE About( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_imageURL( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_imageURL( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_menuBarVisible( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_menuBarVisible( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_menuBarIndex( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_menuBarIndex( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_allowManager( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_allowManager( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockToolbars( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_lockedToolbars( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockToolbars( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_menuBarForceBreak( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_menuBarForceBreak( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_menuBarOffsetLeft( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_menuBarOffsetLeft( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCommandBarColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTooltipBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTooltipTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCommandBarLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCommandBarDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBandHighlightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuItemHighlightBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuTextHighlightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedButtonLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedButtonDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedButtonLightBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedButtonDarkBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedMenuItemLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedMenuItemDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedMenuItemLightBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedMenuItemDarkBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotButtonBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotButtonLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotButtonDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuLightFrameColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuDarkFrameColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelectedMenuButtonLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelectedMenuButtonDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelectedMenuButtonBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuItemLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuItemDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuSeparatorLightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuSeparatorDarkColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuItemHighlightFrameColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuItemBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuButtonBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuButtonDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuButtonLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotMenuButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMenuButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelectedMenuButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisabledMenuElementDarkColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisabledMenuElementLightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisabledToolbarElementDarkColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisabledToolbarElementLightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPressedButtonTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPressedButtonBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPressedButtonLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPressedButtonDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuTextHighlightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuTextColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedContextMenuItemDarkBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedContextMenuItemLightBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedContextMenuItemDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCheckedContextMenuItemLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuDarkFrameColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuLightFrameColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuItemHighlightBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuItemHighlightFrameColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuSeparatorDarkColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetContextMenuSeparatorLightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotContextMenuItemBgColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotContextMenuItemDarkBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHotContextMenuItemLightBorderColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisabledContextMenuElementDarkColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisabledContextMenuElementLightColor( 
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_commandBarInitFunction( 
            /* [retval][out] */ BSTR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_commandBarInitFunction( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_drawMenusWithFlatDetails( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_drawMenusWithFlatDetails( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ShowContextMenu( 
            /* [in] */ BSTR MenuIDString) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ShowMessageBox( 
            /* [in] */ BSTR Message,
            /* [in] */ BSTR Title,
            /* [in] */ unsigned long Flags,
            /* [retval][out] */ long *Result) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetFontProperties( 
            /* [in] */ BSTR FontFaceName,
            /* [in] */ long FontHeight,
            /* [defaultvalue][in] */ long FontStyle,
            /* [defaultvalue][in] */ long CharacterSet,
            /* [retval][out] */ long *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMenuBarVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMenuBar * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ 
            __RPC__deref_out  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMenuBar * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMenuBar * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMenuBar * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMenuBar * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMenuBar * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [range][in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMenuBar * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddMenu )( 
            IMenuBar * This,
            /* [in] */ BSTR MenuIDString,
            /* [in] */ BSTR MenuCaptionString);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Menu )( 
            IMenuBar * This,
            /* [in] */ BSTR MenuIDString,
            /* [retval][out] */ IMenu **pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_count )( 
            IMenuBar * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Toolbar )( 
            IMenuBar * This,
            /* [in] */ BSTR ToolbarIDString,
            /* [retval][out] */ IToolBar **pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_deploymentKey )( 
            IMenuBar * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_deploymentKey )( 
            IMenuBar * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddToolbar )( 
            IMenuBar * This,
            /* [in] */ BSTR ToolbarIDString,
            /* [in] */ BSTR ToolbarCaptionString);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockUI )( 
            IMenuBar * This,
            /* [defaultvalue][in] */ ULONG TimeOutMilliSeconds,
            /* [defaultvalue][in] */ BSTR LockNotifyFuncString,
            /* [defaultvalue][in] */ BSTR LockTimeOutFuncString,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockUI )( 
            IMenuBar * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_lockedUI )( 
            IMenuBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *About )( 
            IMenuBar * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_imageURL )( 
            IMenuBar * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_imageURL )( 
            IMenuBar * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_menuBarVisible )( 
            IMenuBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_menuBarVisible )( 
            IMenuBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_menuBarIndex )( 
            IMenuBar * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_menuBarIndex )( 
            IMenuBar * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_allowManager )( 
            IMenuBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_allowManager )( 
            IMenuBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockToolbars )( 
            IMenuBar * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_lockedToolbars )( 
            IMenuBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockToolbars )( 
            IMenuBar * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_menuBarForceBreak )( 
            IMenuBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_menuBarForceBreak )( 
            IMenuBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_menuBarOffsetLeft )( 
            IMenuBar * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_menuBarOffsetLeft )( 
            IMenuBar * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCommandBarColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetTooltipBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetTooltipTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCommandBarLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCommandBarDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetBandHighlightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuItemHighlightBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuTextHighlightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedButtonLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedButtonDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedButtonLightBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedButtonDarkBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedMenuItemLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedMenuItemDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedMenuItemLightBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedMenuItemDarkBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotButtonBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotButtonLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotButtonDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuLightFrameColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuDarkFrameColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelectedMenuButtonLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelectedMenuButtonDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelectedMenuButtonBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuItemLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuItemDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuSeparatorLightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuSeparatorDarkColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuItemHighlightFrameColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuItemBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuButtonBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuButtonDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuButtonLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotMenuButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMenuButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelectedMenuButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDisabledMenuElementDarkColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDisabledMenuElementLightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDisabledToolbarElementDarkColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDisabledToolbarElementLightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetPressedButtonTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetPressedButtonBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetPressedButtonLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetPressedButtonDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuTextHighlightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuTextColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedContextMenuItemDarkBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedContextMenuItemLightBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedContextMenuItemDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCheckedContextMenuItemLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuDarkFrameColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuLightFrameColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuItemHighlightBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuItemHighlightFrameColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuSeparatorDarkColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetContextMenuSeparatorLightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotContextMenuItemBgColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotContextMenuItemDarkBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHotContextMenuItemLightBorderColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDisabledContextMenuElementDarkColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDisabledContextMenuElementLightColor )( 
            IMenuBar * This,
            /* [in] */ long RValue,
            /* [in] */ long GValue,
            /* [in] */ long BValue);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_commandBarInitFunction )( 
            IMenuBar * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_commandBarInitFunction )( 
            IMenuBar * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_drawMenusWithFlatDetails )( 
            IMenuBar * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_drawMenusWithFlatDetails )( 
            IMenuBar * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ShowContextMenu )( 
            IMenuBar * This,
            /* [in] */ BSTR MenuIDString);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ShowMessageBox )( 
            IMenuBar * This,
            /* [in] */ BSTR Message,
            /* [in] */ BSTR Title,
            /* [in] */ unsigned long Flags,
            /* [retval][out] */ long *Result);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetFontProperties )( 
            IMenuBar * This,
            /* [in] */ BSTR FontFaceName,
            /* [in] */ long FontHeight,
            /* [defaultvalue][in] */ long FontStyle,
            /* [defaultvalue][in] */ long CharacterSet,
            /* [retval][out] */ long *Result);
        
        END_INTERFACE
    } IMenuBarVtbl;

    interface IMenuBar
    {
        CONST_VTBL struct IMenuBarVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMenuBar_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define IMenuBar_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define IMenuBar_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define IMenuBar_GetTypeInfoCount(This,pctinfo)	\
    ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 

#define IMenuBar_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 

#define IMenuBar_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 

#define IMenuBar_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 


#define IMenuBar_AddMenu(This,MenuIDString,MenuCaptionString)	\
    ( (This)->lpVtbl -> AddMenu(This,MenuIDString,MenuCaptionString) ) 

#define IMenuBar_get_Menu(This,MenuIDString,pVal)	\
    ( (This)->lpVtbl -> get_Menu(This,MenuIDString,pVal) ) 

#define IMenuBar_get_count(This,pVal)	\
    ( (This)->lpVtbl -> get_count(This,pVal) ) 

#define IMenuBar_get_Toolbar(This,ToolbarIDString,pVal)	\
    ( (This)->lpVtbl -> get_Toolbar(This,ToolbarIDString,pVal) ) 

#define IMenuBar_put_deploymentKey(This,newVal)	\
    ( (This)->lpVtbl -> put_deploymentKey(This,newVal) ) 

#define IMenuBar_get_deploymentKey(This,pVal)	\
    ( (This)->lpVtbl -> get_deploymentKey(This,pVal) ) 

#define IMenuBar_AddToolbar(This,ToolbarIDString,ToolbarCaptionString)	\
    ( (This)->lpVtbl -> AddToolbar(This,ToolbarIDString,ToolbarCaptionString) ) 

#define IMenuBar_LockUI(This,TimeOutMilliSeconds,LockNotifyFuncString,LockTimeOutFuncString,pVal)	\
    ( (This)->lpVtbl -> LockUI(This,TimeOutMilliSeconds,LockNotifyFuncString,LockTimeOutFuncString,pVal) ) 

#define IMenuBar_UnlockUI(This)	\
    ( (This)->lpVtbl -> UnlockUI(This) ) 

#define IMenuBar_get_lockedUI(This,pVal)	\
    ( (This)->lpVtbl -> get_lockedUI(This,pVal) ) 

#define IMenuBar_About(This)	\
    ( (This)->lpVtbl -> About(This) ) 

#define IMenuBar_get_imageURL(This,pVal)	\
    ( (This)->lpVtbl -> get_imageURL(This,pVal) ) 

#define IMenuBar_put_imageURL(This,newVal)	\
    ( (This)->lpVtbl -> put_imageURL(This,newVal) ) 

#define IMenuBar_get_menuBarVisible(This,pVal)	\
    ( (This)->lpVtbl -> get_menuBarVisible(This,pVal) ) 

#define IMenuBar_put_menuBarVisible(This,newVal)	\
    ( (This)->lpVtbl -> put_menuBarVisible(This,newVal) ) 

#define IMenuBar_get_menuBarIndex(This,pVal)	\
    ( (This)->lpVtbl -> get_menuBarIndex(This,pVal) ) 

#define IMenuBar_put_menuBarIndex(This,newVal)	\
    ( (This)->lpVtbl -> put_menuBarIndex(This,newVal) ) 

#define IMenuBar_get_allowManager(This,pVal)	\
    ( (This)->lpVtbl -> get_allowManager(This,pVal) ) 

#define IMenuBar_put_allowManager(This,newVal)	\
    ( (This)->lpVtbl -> put_allowManager(This,newVal) ) 

#define IMenuBar_LockToolbars(This)	\
    ( (This)->lpVtbl -> LockToolbars(This) ) 

#define IMenuBar_get_lockedToolbars(This,pVal)	\
    ( (This)->lpVtbl -> get_lockedToolbars(This,pVal) ) 

#define IMenuBar_UnlockToolbars(This)	\
    ( (This)->lpVtbl -> UnlockToolbars(This) ) 

#define IMenuBar_get_menuBarForceBreak(This,pVal)	\
    ( (This)->lpVtbl -> get_menuBarForceBreak(This,pVal) ) 

#define IMenuBar_put_menuBarForceBreak(This,newVal)	\
    ( (This)->lpVtbl -> put_menuBarForceBreak(This,newVal) ) 

#define IMenuBar_get_menuBarOffsetLeft(This,pVal)	\
    ( (This)->lpVtbl -> get_menuBarOffsetLeft(This,pVal) ) 

#define IMenuBar_put_menuBarOffsetLeft(This,newVal)	\
    ( (This)->lpVtbl -> put_menuBarOffsetLeft(This,newVal) ) 

#define IMenuBar_SetCommandBarColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCommandBarColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetTooltipBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetTooltipBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetTooltipTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetTooltipTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCommandBarLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCommandBarLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCommandBarDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCommandBarDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetBandHighlightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetBandHighlightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuItemHighlightBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuItemHighlightBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuTextHighlightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuTextHighlightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedButtonLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedButtonLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedButtonDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedButtonDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedButtonLightBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedButtonLightBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedButtonDarkBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedButtonDarkBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedMenuItemLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedMenuItemLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedMenuItemDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedMenuItemDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedMenuItemLightBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedMenuItemLightBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedMenuItemDarkBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedMenuItemDarkBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotButtonBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotButtonBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotButtonLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotButtonLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotButtonDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotButtonDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuLightFrameColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuLightFrameColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuDarkFrameColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuDarkFrameColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetSelectedMenuButtonLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetSelectedMenuButtonLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetSelectedMenuButtonDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetSelectedMenuButtonDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetSelectedMenuButtonBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetSelectedMenuButtonBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuItemLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuItemLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuItemDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuItemDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuSeparatorLightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuSeparatorLightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuSeparatorDarkColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuSeparatorDarkColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuItemHighlightFrameColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuItemHighlightFrameColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuItemBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuItemBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuButtonBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuButtonBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuButtonDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuButtonDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuButtonLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuButtonLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotMenuButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotMenuButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetMenuButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetMenuButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetSelectedMenuButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetSelectedMenuButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetDisabledMenuElementDarkColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetDisabledMenuElementDarkColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetDisabledMenuElementLightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetDisabledMenuElementLightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetDisabledToolbarElementDarkColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetDisabledToolbarElementDarkColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetDisabledToolbarElementLightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetDisabledToolbarElementLightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetPressedButtonTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetPressedButtonTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetPressedButtonBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetPressedButtonBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetPressedButtonLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetPressedButtonLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetPressedButtonDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetPressedButtonDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuTextHighlightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuTextHighlightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuTextColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuTextColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedContextMenuItemDarkBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedContextMenuItemDarkBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedContextMenuItemLightBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedContextMenuItemLightBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedContextMenuItemDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedContextMenuItemDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetCheckedContextMenuItemLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetCheckedContextMenuItemLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuDarkFrameColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuDarkFrameColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuLightFrameColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuLightFrameColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuItemHighlightBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuItemHighlightBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuItemHighlightFrameColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuItemHighlightFrameColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuSeparatorDarkColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuSeparatorDarkColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetContextMenuSeparatorLightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetContextMenuSeparatorLightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotContextMenuItemBgColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotContextMenuItemBgColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotContextMenuItemDarkBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotContextMenuItemDarkBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetHotContextMenuItemLightBorderColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetHotContextMenuItemLightBorderColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetDisabledContextMenuElementDarkColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetDisabledContextMenuElementDarkColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_SetDisabledContextMenuElementLightColor(This,RValue,GValue,BValue)	\
    ( (This)->lpVtbl -> SetDisabledContextMenuElementLightColor(This,RValue,GValue,BValue) ) 

#define IMenuBar_get_commandBarInitFunction(This,pVal)	\
    ( (This)->lpVtbl -> get_commandBarInitFunction(This,pVal) ) 

#define IMenuBar_put_commandBarInitFunction(This,newVal)	\
    ( (This)->lpVtbl -> put_commandBarInitFunction(This,newVal) ) 

#define IMenuBar_get_drawMenusWithFlatDetails(This,pVal)	\
    ( (This)->lpVtbl -> get_drawMenusWithFlatDetails(This,pVal) ) 

#define IMenuBar_put_drawMenusWithFlatDetails(This,newVal)	\
    ( (This)->lpVtbl -> put_drawMenusWithFlatDetails(This,newVal) ) 

#define IMenuBar_ShowContextMenu(This,MenuIDString)	\
    ( (This)->lpVtbl -> ShowContextMenu(This,MenuIDString) ) 

#define IMenuBar_ShowMessageBox(This,Message,Title,Flags,Result)	\
    ( (This)->lpVtbl -> ShowMessageBox(This,Message,Title,Flags,Result) ) 

#define IMenuBar_SetFontProperties(This,FontFaceName,FontHeight,FontStyle,CharacterSet,Result)	\
    ( (This)->lpVtbl -> SetFontProperties(This,FontFaceName,FontHeight,FontStyle,CharacterSet,Result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IMenuBar_INTERFACE_DEFINED__ */



#ifndef __QSAPIWEBMENU20Lib_LIBRARY_DEFINED__
#define __QSAPIWEBMENU20Lib_LIBRARY_DEFINED__

/* library QSAPIWEBMENU20Lib */
/* [helpstring][version][control][uuid] */ 


EXTERN_C const IID LIBID_QSAPIWEBMENU20Lib;

EXTERN_C const CLSID CLSID_MenuBar;

#ifdef __cplusplus

class DECLSPEC_UUID("CA1DD05C-BA08-41B0-BD54-01E63EEC7E13")
MenuBar;
#endif

EXTERN_C const CLSID CLSID_Menu;

#ifdef __cplusplus

class DECLSPEC_UUID("9568726F-6956-4CFE-BEAE-8E5521BF0A3A")
Menu;
#endif

EXTERN_C const CLSID CLSID_MenuItem;

#ifdef __cplusplus

class DECLSPEC_UUID("9451F6A3-6624-4FB0-98E0-CCC8C0D33601")
MenuItem;
#endif

EXTERN_C const CLSID CLSID_SubMenu;

#ifdef __cplusplus

class DECLSPEC_UUID("21F17B62-79B2-4991-8568-6F79682A1E3D")
SubMenu;
#endif

EXTERN_C const CLSID CLSID_ToolBar;

#ifdef __cplusplus

class DECLSPEC_UUID("8A99A404-8AA7-4BC8-8B52-56D312180911")
ToolBar;
#endif

EXTERN_C const CLSID CLSID_Button;

#ifdef __cplusplus

class DECLSPEC_UUID("40AA5B03-B89A-4F25-9C3A-994AA2ADE236")
Button;
#endif
#endif /* __QSAPIWEBMENU20Lib_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


